Magnetic tapes continue to provide low-cost input/output capability for computer data interchange and off-line storage. To improve performance different schemes have been used to maximize tape area usage, primarily through data compression schemes and record packing schemes that reduce tape wastage between records on tape. In the past, if a user data record ended in the middle of a tape block the rest of the tape block had to be padded so that the next user data record could be written at the next tape block. This led to significant wastage of tape due to padding between records.
Before the use of data compression schemes, a smart and efficient user would choose data records that were multiples of the native tape block size. With that choice of records, tape blocks were used in full without padding. However, with the advent of data compression schemes, user data becomes compressed to variable sizes thereby using up fractions of tape blocks, hence causing wastage.
In order to overcome the problem of wasted area on tapes while using data compression schemes, record packing techniques are used. One such scheme uses super tape blocks of variable Size capable of containing multiple user data records. This scheme requires the use of variable size headers for each variable size super tape block to describe the partition of user data records within each block. Such a scheme is not suitable for systems using fixed size tape blocks. Further, for systems using block ECC codes variable block sizes are not efficient.
Another record packing scheme is used with the Digital Audio Tape (DAT) fixed block tape format. The DAT is a helical scan tape having diagonal tracks. Data records are written in groups of about 20 tracks. In the last track of each group an index is maintained that describes the partition of the tracks in the group. Having the index in the last track of the group makes appending to data records in DAT difficult. Further, if the index is irrecoverable for some reason the amount of data lost is significant. There is a need for a record packing scheme that uses fixed size tape blocks to store variable size user data records while using data compression techniques to maximize tape utilization.